/*
 * UpStoneGachyaResource.h
 *
 *  Created on: 2014. 3. 3.
 *      Author: mega
 */

#ifndef UPSTONEGACHYARESOURCE_H_
#define UPSTONEGACHYARESOURCE_H_

#include <map>

namespace ProjectZ { namespace NResource {

class UpStoneGachyaResource
{
public:
	enum UpStoneGachyaType {
		EM_FREE_GACHYA = 0,
		EM_CHARGE_GACHYA,
	};

public:
	struct Flyweight
	{
		int _IDX;
		int _RATE1;
		int _RATE2;
		int _RATE3;
		int _RATE4;
		int _RATE5;
		int _RATE6;
		int _RATE7;
		int _RATE8;
		int _RATE9;
		int _RATE10;
	};

public:
	UpStoneGachyaResource();
	virtual ~UpStoneGachyaResource();

	bool		LoadResource();
	Flyweight *	GetFly(UpStoneGachyaType eType);
	bool		GetUpStoneGachyaQuality(UpStoneGachyaType eType, int & upstoneQuality);

private:
	void	Clear();

public:
	typedef std::map<int, Flyweight *>	UPSTONEGACHYATREE;

private:
	UPSTONEGACHYATREE	clsFlyTree;
};


} /*NResource*/ } /*ProjectZ*/



#endif /* UPSTONEGACHYARESOURCE_H_ */
